A movement plan is a detailed plan for moving trains in a rail network over a predetermined period of time. The movement plan begins with a list of scheduled activities, such as the times associated with origination, termination, crew change, engine change, train stop, assigned work, inspection and the like. Based on the scheduled activities the movement planner generates events such as meets, passes, railroad crossing at grade, planned hold, and safe space. A meet-pass involves planning the meet locations where trains traveling in opposite directions can get past each other. It also involves determining the pass locations where a fast train can get past a slower train traveling in the same direction. Currently, dispatchers typically develop movement plans manually. However, such manual development of movement plans is inadequate to efficiently plan the movement for large scale railroad operations.
Current Class 1 rail operations typically involve thirty to sixty thousand track miles and handle one to five thousand trains per day. The rails handle mixed traffic including bulk commodity, intermodal, manifest freight, automobile, passengers and others, each with their own scheduling characteristics. Typically the rail operations are broken into geographic sections with centralized dispatch centers controlling each section. Thus, a single train traversing many sections sees many dispatchers over its journey. A common problem associated with this type of train planning is that goals may not be communicated across sections and a movement plan that looks good to one dispatcher may actually harm the operation of the overall rail.
Computing a movement plan requires a variety of data including train schedules and operating costs, the topology of the rail network, speed restrictions and track blocks, real time status of the trains, and dispatcher inputs. A planning algorithm uses all this data to generate a near-optimal way to move trains.
One prior art approach using a computerized movement planner utilizes a technique known as simulated annealing. In this method, the scheduled trips for all trains are laid out using unopposed runtime. The planner then iteratively inserts or removes random delay at random points in a trip, searching for a maximum total plan value. The planner then searches for a better plan until the maximum number of trial is reached, or the change in the total plan value from the previous plan are not statistically significant.
The present disclosure is directed to a computerized movement planner that uses a computer simulation to model the details of the problem including the track topology, train schedules and activities. The computerized planner constructs the movement plan starting at the current time always ensuring feasibility. It achieves this by incrementally moving trains one at a time for a short duration and repeats the process until the trains have reached their destinations or the end of the horizon is reached.